Урок 22 – Меню и публикация

Для начала давайте переименуем нашу сцену и назовем ее просто Game. Далее создадим новую сцену и назовем ее Title Scene. Итак, у нас получилась пустая сцена.

Теперь создаем новый текстовый объект.

Добавляем этот текстовый объект на сцену.

Продублируем наш объект и внесем следующие изменения.

И добавляем этот объект также на сцену.

Далее создадим новый объект в виде кнопки.

Выберем этот вариант

Также добавляем ее на экран.

Два раза щелкнем по кнопке, чтобы открыть ее настройки.

И здесь уже очень много настроек. Давайте разберемся с ними по порядку.

Hovered fade out duration – Когда вы еще не навели курсор на кнопку она имеет цвет состояния Idle, но когда вы наводите курсор на кнопку, то она переходит в состояние Hovered. Убрав курсор с кнопки, цвет должен снова перейти в состояние Idle, и эта настройка контролирует как долго должен происходить смена цвета с Hovered к Idle;

Label offset on Y axis when pressed – смещение текста (!) вниз или вверх при нажатие на кнопку;

В разделе Padding мы настраиваем отступы от текста до краев кнопки;

Далее идут стандартные настройки текстового объекта:

Затем следует настройка состояния Idle:

Здесь мы можем изменить картинку кнопки. Если кнопка будет растягиваться из-за длины текста то параметр Repeat borders and center textures будет копировать небольшие участки картинки с границей и фоном, чтобы не растягивать всю картинку.

C Margin чуточку сложней. С помощью нее вы можете настроить размер элементов кнопки, которые должны повторяться при растягивании. Любая картинку кнопки GDevelop нарезает на 9 частей.

Из этих частей не повторяются только 1, 3, 7 и 9 квадраты. Top Margin задает размер 2 прямоугольнику, Botton Margin 8 прямоугольнику, а Left и Right соответственно 4 и 6 прямоугольникам.

Если вы растягиваете кнопку в высоту, то начинают повторятся 4, 5 и 6 прямоугольники, если растягиваете в ширину то повторяются 2,5 и 8 прямоугольники.

Я оставлю стандартные настройки, только изменю текст на Play, сделаю его жирным и укажу выравнивание по центру.

Чтобы стартовый экран не был таким скучным, давайте добавим анимацию в виде движущегося блока. Создаем новый спрайтовый объект c именем RedSquare (Красный квадрат) и открываем Piskel.

После создания и сохрание спрайта в Piskel, добавьте этому новому объекту поведение встряхивание (Shake Object) в разделе Search New Behaviours.

После установки этого поведения, выберем его.

У данного поведения нет параметров, так что просто его добаляем.

Теперь располагаем новые объекты так.

С помощью зажатой кнопки Shift я пропорционально увеличил, м с помощью зажатой кнопки Ctrl смог продублировать объект.

Теперь добавим им анимацию трясения через события.

Проверяем. Все должно заработать:)

Теперь я хочу добавить еще текст в наше стартовое меню.

И расположим его так.

Далее обведем эти слова небольшим контуром.

Также давайте сделаем так, чтобы этот текст двигался вверх и вниз.

Параметры указываем такие.

Можете проверить, все должно заработать.

Теперь мы должны сделать так, чтобы при нажатии кнопки, мы переносились на первый уровень.

Далее я хочу добавить звуки при наведении и клике по кнопке, и чтобы эти события работали один раз.

Вроде все работает, но мне не нравится резкий переход к игре при нажатии кнопки.

Давайте добавим плавный переход. Для этого нам надо добавить новое расширение.

Теперь создадим новый объект Shape Painter. Назовем его Shape Painter и добавим в поведение наше расширение.

Перемещю его сюда.

Теперь идем в события и назначаем объекту transition такое действие.

Также укажем, чтобы при срабатывания анимации сцена переключилась на одну секунду позже.

Теперь я хочу чтобы такой эффект был и у сцены с самой игрой только в обратном направлении. Чтобы использовать объект и в других сценах, надо сделать его глобальным.

Теперь добавим этот эффект в сцену.

Настало время создать финальную сцену. Просто продублируем стартовую цену и назовем ее Final Scene.

Далее удалим там ненужные нам объекты, а на кнопку повесим событие выхода из игры.

Далее, я хочу добавить логотип, допустим нашей студии. Картинку я просто скачал в интернете и добавил в игру как объект спрайт.

Теперь я хочу, чтобы при нажатии на логотип, пользователи переходили на сайт моей студии. Проблема в том, что логотип не является кнопкой, но мы можем добавить поведение кнопки.

Для начала нам необходимо отредактировать расширение кнопки.

Откроется такое окно.

Подробнее о редактировании расширений мы поговорим чуть позже, когда будем создавать свои расширения. А пока просто сделайте поведение ButtonFSM публичным.

Теперь это поведение доступно для добавления в объекты.

Теперь добавим событие при нажатии на логотип. Условие будет таким:

А действие будет таким:

Проверяем, все должно заработать:)

Теперь мы должны связать конечный экран с нашей игрой.

B последний этап, что нам надо сделать – это опубликовать игру!

Нажимаем на кнопку “Publish”.

Откроется такое окно:

Здесь мы можем опубликовать игру на сате gd.games, или на другие платформы.

Нажмем на кнопку “Export to other platforms”. Откроется такое окно, где можно выбрать как мы хотим экспортировать игру – как веб-приложение, для смартфонов, на компьютеры, или просто как архив.

Если вы экспортируете игру как веб-приложение, то вам необходимо будет добавить папку с игрой на сервер, иначе игра не будет работать.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *